package org.zsl.controller.springmvc;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.zsl.model.ResponseMsg;
import org.zsl.model.User;
import org.zsl.service.UserService2;

import java.util.List;

/**
 * @RestController = @Controller + @ResponseBody
 * */
//@Controller
@RestController
@RequestMapping("/user")
public class UserController {

     @Autowired
     private UserService2 userService2;


     @RequestMapping(value = "/login")
   //  @ResponseBody
     public ResponseMsg login(User user){


          System.out.println("--------");
          System.out.println(user.getUsername());
          System.out.println("--------");
          System.out.println(user.getPassword());

           /**
            *   如果 浏览器传递的数据 json中的某个属性
            *   和 当前参数列表中的对象的（私有）属性名称一致
            *
            *   json的属性 就会 直接 赋值给当前对象的对应的属性
            * */


          /**
           * @ResponseBody + return
           *   相当于把返回值 放置到 response的返回的流中
           *   返回数据的数据的格式是 json ---
           *   messsgae-convert 来自fastjson(gson、jackson)
           * */

        return   userService2.login(user);

     }


     @RequestMapping("/list")
    // @ResponseBody
     public List<User> list(){
          return  userService2.getList();
     }

}
